分享人:甘乐
1.背景介绍
2.知识剖析
3.常见问题
4.解决方案
5.编码实战
6.扩展思考
7.参考文献
8.更多讨论
性能测试是通过自动化的测试工具模拟多种正常峰值和异常负载条件来对系统的各项性能指标进行测试。 性能测试包括负载测试,强度测试和容量测试等.
通过负载测试,确定在各种工作负载下系统的性能,目标是当负载逐渐增加时,测试系统各项性能指标的变 化的情况.压力测试是通过确定一个系统的瓶颈或者不能接受的性能点,来获得系统能提供的最大服务级别的测试.
在Web性能测试领域,有两种工具广泛使用:LoadRunner和JMeter.
1.性能测试的目的
性能测试的目的是验证软件系统能否达到用户提出的性能指标,同时发现软件系统中存在的性能瓶颈, 以优化软件,最后起到优化系统的目的.包括以下结构方面:
2.性能测试的常见指标
对于B/S架构,一般关注Web服务器性能指标:
对于C/S架构,由于后台通常为数据库,一般关注数据库的性能测试:
3.JMeter GUI 基本操作
4.JMeter常用测试单元
4.定时器,默认情况下,线程在发送请求之间没有间隔,添加一种定时器,以便设定请求之间间隔多长时间.
5.断言,检查从服务器获取的响应内容.
6.Sample与采样器紧密相连,不发送请求,可以添加或者修改请求.
7.前置处理器,在采样器发出请求之前做一些特殊操作.
8.后置处理器,在采样器发出请求之后做一些特殊操作,常用来从响应中提取数据.
5.JMeter执行顺序规则
配置元件----前置处理器----定时器----采样器---- 后置处理器(除非服务器响应为空)-----断言(除非服务器响应为空)----监听器(除非服务器响应为空)
6.JMeter测试结果
为什么常用Badboy录制Web性能测试脚本,而不是选择JMeter代理录制?
JMeter代理不支持HTTPS协议,原因在于代理无法破译HTTPS通信内容, 并录制请求参数或者Cookie. 只有设置密钥库后,JMeter代理才可以录制HTTPS请求。而Badboy作为 一种自动化测试工具,不仅支持对HTTPS协议的录制,本身也具有许多丰富且强大的功能, 简化开发人 员的测试工作.
Badboy is a powerful tool designed to aid in testing and development of complex dynamic applications. Badboy makes web testing and development easier with dozens of features including a simple yet comprehensive capture/replay interface, powerful load testing support, detailed reports, graphs and much more!
创建Web测试计划.
性能测试结果的分析在完成JMeter测试脚本执行后.首先要做的就是判断收集到的测试数据是否真实有效,对无效的测试数据进行分析, 无端了浪费时间和精力.通常判断测试数据是否有效的方法如下:
今天的分享就到这里,感谢诸君围观!